Previous: Output Functions, Up: Read and Print [Contents][Index]
The value of this variable is the default output
stream—the stream that print functions use when the
stream argument is nil. The default
is t, meaning display in the echo area.
If this is non-nil, that means to print
quoted forms using abbreviated reader syntax, e.g.,
(quote foo) prints as 'foo, and
(function foo) as #'foo.
If this variable is non-nil, then newline
characters in strings are printed as
‘\n’ and formfeeds are printed as
‘\f’. Normally these characters are
printed as actual newlines and formfeeds.
This variable affects the print functions
prin1 and print that print with
quoting. It does not affect princ. Here is an
example using prin1:
(prin1 "a\nb")
⊣ "a
⊣ b"
⇒ "a
b"
(let ((print-escape-newlines t))
(prin1 "a\nb"))
⊣ "a\nb"
⇒ "a
b"
In the second expression, the local binding of
print-escape-newlines is in effect during the
call to prin1, but not during the printing of
the result.
If this variable is non-nil, then unibyte
non-ASCII characters in strings are
unconditionally printed as backslash sequences by the print
functions prin1 and print that
print with quoting.
Those functions also use backslash sequences for unibyte non-ASCII characters, regardless of the value of this variable, when the output stream is a multibyte buffer or a marker pointing into one.
If this variable is non-nil, then multibyte
non-ASCII characters in strings are
unconditionally printed as backslash sequences by the print
functions prin1 and print that
print with quoting.
Those functions also use backslash sequences for multibyte non-ASCII characters, regardless of the value of this variable, when the output stream is a unibyte buffer or a marker pointing into one.
The value of this variable is the maximum number of elements to print in any list, vector or bool-vector. If an object being printed has more than this many elements, it is abbreviated with an ellipsis.
If the value is nil (the default), then there
is no limit.
(setq print-length 2)
⇒ 2
(print '(1 2 3 4 5))
⊣ (1 2 ...)
⇒ (1 2 ...)
The value of this variable is the maximum depth of nesting
of parentheses and brackets when printed. Any list or vector
at a depth exceeding this limit is abbreviated with an
ellipsis. A value of nil (which is the default)
means no limit.
These are the values for print-length and
print-level used by
eval-expression, and thus, indirectly, by many
interactive evaluation commands (see
Evaluating Emacs-Lisp Expressions in The GNU Emacs
Manual).
These variables are used for detecting and reporting circular and shared structure:
If non-nil, this variable enables detection
of circular and shared structure in printing. See Circular
Objects.
If non-nil, this variable enables detection
of uninterned symbols (see Creating
Symbols) in printing. When this is enabled, uninterned
symbols print with the prefix ‘#:’,
which tells the Lisp reader to produce an uninterned
symbol.
If non-nil, that means number continuously
across print calls. This affects the numbers printed for
‘#n=’ labels and
‘#m#’ references.
Don’t set this variable with setq; you
should only bind it temporarily to t with
let. When you do that, you should also bind
print-number-table to nil.
This variable holds a vector used internally by printing
to implement the print-circle feature. You
should not use it except to bind it to nil when
you bind print-continuous-numbering.
This variable specifies how to print floating-point
numbers. The default is nil, meaning use the
shortest output that represents the number without losing
information.
To control output format more precisely, you can put a
string in this variable. The string should hold a
‘%’-specification to be used in the
C function sprintf. For further restrictions on
what you can use, see the variable’s documentation
string.
Previous: Output Functions, Up: Read and Print [Contents][Index]